Переключатель curl --speed-limit позволяет curl возвращать ошибку, если скорость передачи падает ниже заданного порогового значения в течение заданного промежутка времени.К сожалению, порог скорости не может быть установлен на значения меньше единицы, и идеальным значением для API потоковой передачи Twitter будет 1/30, так как он отправляет один символ каждые 30 секунд для его поддержки.Лучшее, что вы можете сделать, это использовать порог в 1 Bps, но тогда curl будет сдаваться всякий раз, когда есть период бездействия (без твитов), превышающий выбранную вами продолжительность.Приведенная ниже команда будет сдана, если есть 30-секундный период, в течение которого она получает менее 30 байтов.
curl -d @filter.txt https://stream.twitter.com/1/statuses/filter.json -uTwitterLogin:TwitterPassword --speed-time 30 --speed-limit 1
Подводя итог: нет удовлетворительного решения, используя только опции в curl.