Как слушать живые комментарии на сервере на Facebook IOS - PullRequest
0 голосов
/ 04 марта 2020

Я использую новые конечные точки SSE для комментариев в реальном времени на видео в реальном времени. у меня вопрос, как я могу добиться этого на IOS и какую библиотеку я должен использовать

Я пытался использовать источник событий для IOS https://github.com/inaka/EventSource

Но Хотя я пытался использовать OnMessage и addOnEventsource, похоже, что это не работает.

Вот мой код для прослушивания комментариев в реальном времени

    var live_commentURL =  URL.init(string:"https://streaming-graph.facebook.com/\(fbLiveStreamId!)/live_comments?access_token=\(accessToken ?? "")&comment_rate=one_per_two_seconds&fields=from{name,id},message")


        let queryItems = [NSURLQueryItem(name: "access_token", value: accessToken!), NSURLQueryItem(name: "comment_rate", value: "one_hundred_per_second"),NSURLQueryItem(name: "fields", value: "from{name,id},message")]
        let urlComps = NSURLComponents(string: "https://streaming-graph.facebook.com/\(fbLiveStreamId!)/live_comments")!
//        var headders:[String:String] = [:]
//        headders["access_token"] = accessToken!
//        headders["comment_rate"] = "one_hundred_per_second"
//        headders["fields"] = "from{name,id},message"

        var eventSource = EventSource.init(url:urlComps.url!)
        eventSource.connect()
        eventSource.onOpen {
            print("Successfully Connected to server")
        }
        eventSource.addEventListener("user-connected") {(id, event, data) in
            print("id:", id)
            print("event:" , event)
            print("data: ", data)
        }

        eventSource.onMessage { (id, event, data) in
            print("id:", id)
            print("event:" , event)
            print("data: ", data)
        }
        print(eventSource.events())
        eventSource.onComplete { (code, isErro, error) in
            print(code)
        }

Я пытался отправить доступ tokesn и другим поля в заголовках тоже, но мне не повезло.

Я попробовал 2 метода

метод 1 отправить accesstoken, comment_rateand поля в качестве заголовков, но я не думаю, что это правильно way.

method 2

Поскольку все они являются параметрами запроса, я использовал NSURLComponents.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...