Получать уведомления при изменении файла в Dropbox - PullRequest
25 голосов
/ 09 марта 2012

Есть ли в Dropbox способ уведомления об изменении файла, т. Е. О прибытии новых загрузок или об изменении файла.

Ответы [ 9 ]

31 голосов
/ 08 июня 2012

Хотя вам все равно придется опрашивать, есть относительно новая конечная точка API под названием /delta, которая позволит вам опрашивать намного эффективнее, чем /metadata конечная точка.

Это лучше, чем использование RSS-канала.

24 голосов
/ 09 марта 2012

Как указывает Каннан, есть новая конечная точка API с именем /delta, которая лучше, чем опрос или RSS.

Это также можно использовать вместе с /longpoll_delta Конечная точка API:

A long-poll endpoint to wait for changes on an account. In conjunction 
with /delta, this call gives you a low-latency way to monitor an account 
for file changes.
6 голосов
/ 14 мая 2014

Dropbox теперь официально предлагает Webhooks https://www.dropbox.com/developers/blog/90/announcing-dropbox-webhooks

6 голосов
/ 07 июля 2012

Этот дельта API можно вызвать для получения синхронизации

http://forums.dropbox.com/topic.php?id=53533

5 голосов
/ 20 февраля 2014

Dropbox недавно анонсировал WebHooks!

Если вы хотите помочь нам, просто нажмите, чтобы заполнить вашу информацию, и мы свяжемся с вами:

Счастливого Dropboxing!

1 голос
/ 12 ноября 2014

Хотя дельта-API Dropbox используется для получения списка всех измененных сведений о файле, веб-крючок - это то, что необходимо для получения уведомления об изменении (изменение, добавление или удаление файла)

  1. Перейдите на: Консоль приложения Dropbox Developer
  2. Нажмите на свое приложение, содержащее файлы, изменения которых вы хотите получать.
  3. Прокрутите вниз до «WEBHOOK»
  4. Вставьте ссылку, которая будет обрабатывать уведомления с помощью метода POST.
  5. Нажмите ENABLE.

Моментнажмите «Включить», после чего выпадающий список отправит запрос на указанную вами ссылку, чтобы увидеть, отвечает ли он на запрос GET или нет.Вы должны убедиться, что ссылка отвечает на него.Если вы работаете с фреймом Python и Flask, достаточно следующих двух строк кода:

@app.route('/webhook', methods=['GET'])
def verify():
    '''Respond to the webhook verification (GET request) by echoing back the challenge parameter.'''

    return request.args.get('challenge')

Теперь вы будете получать уведомления по POST по вышеуказанной ссылке каждый раз, когда вносятся изменения в dropbox.Работайте с уведомлениями так, как вы хотите.:)

1 голос
/ 10 апреля 2014

В Dropbox есть новая конечная точка длинного опроса для дельт:

https://www.dropbox.com/developers/blog/63/low-latency-notification-of-dropbox-file-changes

1 голос
/ 16 января 2013

Если у вас есть компьютер с установленным Dropbox, который всегда включен, вы можете настроить запуск сценария всякий раз, когда Dropbox выскакивает уведомление об изменении.Затем этот скрипт может получить журнал изменений с помощью RSS (или API / delta), и если интересующий вас файл / каталог изменился, отправьте уведомление.

На Mac Dropbox может отправлять уведомления Growl ивы можете сказать Growl запустить ваш скрипт.В Windows вам нужно будет следить за уведомлениями в системном трее, используя что-то вроде gTraySpy .Growl для Windows может сделать это, если вы установите плагин Windows Balloons .

До тех пор, пока вы можете запустить скрипт, когда изменение произошло, это просто вопрос анализавойти и выполнить действие, когда определенные элементы изменились.

0 голосов
/ 24 марта 2013

Dropbox SYNC API - это путь, по которому

DBPath *path = [DBPath root];
[fileSystem addObserver:self forPathAndChildren:path block:^() {
        NSLog(@"something changed in your dropbox folder!");
    }];
...