我试图在脚本中使用一些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
有关此问题的任何提示吗?
我已经尝试过google了一下,我发现没有什么真正有用的。在某些例子中,他们使用与我完全相同的东西(例如:第85行的http://www.sevagas.com/Real-time-system-alerts-using-Twitter-OAuth-implementation)
答案 0 :(得分:1)
好。我只是用工具评论来解决它。 所以,如果有人犯了同样的错误,那就是答案:
不要使用
$twitter->new_direct_message($user, $message_ack);
但
$twitter->new_direct_message({ user => $user, text => $message_ack });
你会没事的。
看起来你必须传递一个hashref, 但我无法在文档中清楚地看到提示
由于