2017-05-02 32 views
2

私はTelegramボットのためにnode.jsモジュールを使用します。 私はテレグラムAPIを使用してテレグラムにユーザーの連絡先を取得しようとしています。 テレグラムAPIには、Bot API and Telegram APIの2種類があります。テレグラムの連絡先を取得する

ボットAPIがユーザーの連絡先を取得できないと思います。 テレグラムAPIには、方法contact.getContactsがあります。しかし、私はそれを使う方法を知らない。

テレグラムで連絡先を取得するにはどうすればよいですか?

答えて

2

Bot APIも連絡先情報を取得できます。この場合は簡単だと思います。

返信用キーボードrequest_contactを試すことができます。ユーザーがクリックすると、Contactフィールドの更新メッセージが届きます。

+1

グレートと1つの余分ポイントを宣言することを忘れないでくださいログインすることができます。彼の許可なしにユーザーの連絡先を取得することはできません。そのため、このメソッドはget_contactではなく 'request_contact'と呼ばれています。 –

1
  1. このコードはあなたに連絡を与える、ユーザーがボットとの彼/彼女の連絡先を共有し、ユーザーの種類は、「/特別な」コマンドボットは接触を得ることができるようにボタンが表示して、ノードサーバで合意にされますあなたは、連絡先情報は、マークアップ---->

    //declare Markup 
    const {Extra,Markup}= Telegraf; 
    
    bot.command('special', (ctx) => { 
    return ctx.reply('Special buttons keyboard', Extra.markup((markup) => { 
    return markup.resize() 
    .keyboard([ 
    markup.contactRequestButton('contact') 
    ]) 
    })) 
    }) 
    //listens for the click on contact button 
    bot.on('contact', (ctx) => { 
    console.log(ctx.update.message.contact); 
    //logs { phone_number: '254*******', 
    //first_name: 'nelsonBlack', 
    //user_id: 73***** } 
    
    }) 
    
関連する問題