2016-09-27 14 views
1

電報documentation状態:ほぼすべてのメッセージの認識しtelegram.orgサーバの応答

領収書(一部の純粋 サービスのものの例外と同様に作成するためのプロトコル で使用されるテキスト形式のメッセージで認証キー)を確認する必要があります。これは、次のサービスメッセージ( 肯定応答を必要としない)の 使用を必要とする:

msgs_ack#62d6b459 msg_ids:Vector long = MsgsAck; 

This threadバックサーバーではなく、これらのACKが送信されるメカニズムにACKを送信する暗示します。 MsgsAckmsgs_ackをサーバーに送信しようとしましたが、コンストラクター(メソッド)ではなくデータ型なので失敗しました。これは二つの質問に私をリード:

  1. がどのように電報クライアントがサーバーにACKを送るのでしょうか? (個別にまたはメソッド呼び出しの一部として)
  2. 電文クライアントは、ackを必要とするサーバー応答と、応答しないサーバー応答を区別する方法を教えてください。これについて移動する

答えて

1

簡単な方法である(req_msg_idが含まれた応答がACKを必要とするが、私は確認したいのですが表示されます):)

1サーバーからのために受け取るmsg_idsを蓄積 - ドキュメントに示されているように認められる必要があるもの:これらはすべてコンテンツ関連メッセージではなく、サービスメッセージ

2)サーバーに新しいメッセージを送信するたびにある、あなたの蓄積された受信確認メッセージを含めることができます送信しようとしているメッセージとともにメッセージコンテナに保存します。

3)上記の手順2)でクリアする機会を持たずに、ある一定期間にわたって承認されるmsg_idsを蓄積している場合は、確認メッセージをmsg_idsのリスト承認される。簡単に聞こえるが、スキーマに従って `MsgsAck`は、データ_type_、ない_method_ある

msgs_ack#62d6b459 msg_ids:Vector<long> = MsgsAck; 
+0

が承認使用これを送信します。何らかの方法でラップするのではなく、元のデータとしてMsgsAckをサーバーに送り返すべきだと言っていますか? MessageContainerのDitto:これは型であり、メソッドではありません。 @CharlesOkwuagwu –

+1

それは正しいです。あなたは現在メッセージコンテナを送信していますが、同様にMsgsAck –

関連する問題