【发布时间】:2020-09-27 20:13:45
【问题描述】:
我正在尝试在脚本中使用一些 DM 功能和请求。 我的目标是参加一个活动,向选定的追随者发送 DM。
目前,我的工作代码是这样的:
#!/usr/bin/perl
use strict;
use warnings;
use Net::Twitter::Lite::WithAPIv1_1;
my $twitter = Net::Twitter::Lite::WithAPIv1_1->new(
access_token_secret => 'XXX',
consumer_secret => 'XXX',
access_token => 'XXX',
consumer_key => 'XXX',
user_agent => 'Myself',
ssl => 1,
);
my $user = 'myself';
my $message_ack = "Hasta la vista, baby";
print "[sending: '$message_ack' to '$user'\n";
my $ack = $twitter->new_direct_message($user, $message_ack);
我有以下回报:
# perl test.pl
[sending: 'Hasta la vista, baby' to 'myself'
new_direct_message expected 1 args at test.pl line 21.
我不明白,因为 CPAN 文档指出给定的 2 个参数是必需的:
new_direct_message(用户,文本)
参数:user、text、screen_name、user_id、include_entities
必需:用户,文本
从 验证用户。需要用户和文本参数。 成功时返回发送的消息。为了支持数字 屏幕名称,可以使用 screen_name 或 user_id 参数 而不是用户。
返回:DirectMessage
关于这个有什么提示吗?
我在这方面尝试了一些谷歌搜索,但没有发现任何真正有用的信息。在某些示例中,他们使用与我完全相同的东西(例如:第 85 行的http://www.sevagas.com/Real-time-system-alerts-using-Twitter-OAuth-implementation)
【问题讨论】:
-
文档似乎很混乱。只有
text被列为必填项,但它也说“需要用户和文本参数”。 -
看看测试,也许你需要给它传递一个hashref?
new_direct_message({ user => $uuser, text => $message_ack})