Plots2: 规划问题:通过 Twitter 回复。

创建于 2018-04-28  ·  72评论  ·  资料来源: publiclab/plots2

请描述问题(或想法)

这是 twitter 回复的计划问题:功能。

让我们首先讨论最好的方法,然后我们将把它分解成更小的独立问题。

更多详情🔜!

  • 这里解释了我们可以实现这一点的一种方法: https ://publiclab.org/notes/sagarpreet/02-16-2018/social-media-integration-and-part-of-interactive-project-maps

=> 电子邮件集成 #2672 ( @namangupta01 )

feature in progress more-detail-please planning summer-of-code

最有用的评论

作为@jywarren ,我们应该合并OA系统吗?

所有72条评论

凉爽的! 也链接到纳曼的新一期!

2018 年 4 月 28 日星期六凌晨 3:25 Sagarpreet Chadha [email protected]
写道:

请描述问题(或想法)

这是 twitter 回复的计划问题:功能。

让我们首先讨论最好的方法,然后我们将其分解为
较小的独立问题。

更多详情🔜!


您收到此消息是因为您订阅了此线程。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671 ,或静音线程
https://github.com/notifications/unsubscribe-auth/AABfJ6EpFnMq_H5zR8vLtf7kXWZJbELxks5ttBlcgaJpZM4TrSYe
.

@namangupta01 ,@ jywarren ...让我们开始讨论这个吧? 你们俩什么时候有空?

是的!
2018 年 6 月 14 日 12:55,“Sagarpreet Chadha” [email protected]写道:

@namangupta01 https://github.com/namangupta01 ,@jywarren
https://github.com/jywarren ...让我们开始讨论这个? 什么时候
你们都有空吗?


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-397198245
或使线程静音
https://github.com/notifications/unsubscribe-auth/ATwCYebYN7qM2c0Emtdw2jhwYIILp5r1ks5t8g_fgaJpZM4TrSYe
.

我有一些实现在我的脑海中......将在一段时间内发布。

乔(刚开始与公共实验室工作人员一起工作)有一个非常好的
问题——这会是垃圾邮件发布的渠道吗? 我们需要担心吗
关于 Twitter 机器人垃圾邮件,或者考虑一个适度的策略?

我们有什么方法可以提防这个? 打开头脑风暴!

就像,也许响应推文必须被……某人“喜欢”?

2018 年 6 月 14 日星期四凌晨 4:47 Naman Gupta [email protected]
写道:

我有一些实现在我的脑海中......将在一段时间内发布。


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-397237305
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ_g3eeUD8-7bvLjXmQLYIz0LYM1qks5t8jEFgaJpZM4TrSYe
.

垃圾邮件是主要问题。 我正在阅读过去几天的文档。 我还想知道我们是否像您所说的那样实施“必须喜欢响应推文”,我发现了一个主要问题。
问题是,每当用户转发推文(这是一个节点)时,我们可以通过 api 了解转发,但是当转发被喜欢时,我们无法知道。 了解它的唯一方法是在特定时间间隔后搜索每个转发状态,这是非常糟糕的,因为假设我们有 10k 转发,那么我们必须搜索 10k 转发状态才能在特定时间间隔内被喜欢。 而且随着时间的推移,这个 10k 的数字将继续上升。

还有一个可能导致没有垃圾邮件的要点是,我们只能添加那些推特句柄与任何 publiclab 帐户相关联的用户的推文,就像我们在reply-by-email中所做的那样,其中电子邮件发件人的电子邮件是第一位的检查与 publiclab 帐户的关联性。
这可能不会导致垃圾邮件。

@namangupta01 ...好点!

  • 垃圾邮件是这里的问题,我想我能想到的唯一审核技巧是主持人必须通过喜欢它来批准对推文的评论(类似于 publiclab.org 中的工作方式)。
    => 版主可以是拥有 PublicLab 推特账户的人,也可以是在自己的账户中点过赞的 PL 社区人士。

  • 我想关键是要给社区带来一个新成员,所以只带来现有人的评论将解决一半的问题。

你怎么认为 ?

伟大的思想! 但我唯一关心的一点是,我们必须明确检查在 publiclab 推文上的所有推文的每个请求中是否喜欢推文,随着推文的增加,这可能会变成非常大的请求。

大多数情况下,我们会无缘无故地请求推文……这是我的担忧。 你怎么认为?

但是,publiclab 网站界面上的审核技术会很好用。
喜欢批准评论?

@jywarren由于电子邮件功能几乎完成,我们可以讨论一下吗?

我会在一两天内抽出一些时间来解决这个问题……谢谢!
在继续之前尝试让所有重要功能完全启动并运行。
谢谢!

2018 年 6 月 25 日星期一晚上 7:18 Naman Gupta [email protected]
写道:

@jywarren https://github.com/jywarren因为电子邮件功能差不多
完整的我们可以讨论过吗?


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-400125415
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ-UOBtZ0G4haKmQRlSr0WJJ3Q30pks5uAW-ugaJpZM4TrSYe
.

@jywarren我们可以将 node_id 放在推文中吗? 以便于识别?

@jywarren是否可以将 node_id 放在推文中?

我想是的,是的! 但是我们暂时关闭了自动推文。 我们能
通过 Twitter API 识别 publiclab.org/n/____ 之类的链接?

2018 年 7 月 15 日星期日上午 9:26 Naman Gupta [email protected]写道:

@jywarren https://github.com/jywarren有没有可能放
推文中的node_id?


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-405091999
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ575zPOLYU6bpFdMMkZA0vl-Xg_Yks5uG0LpgaJpZM4TrSYe
.

@jywarren所以publiclab.org/n/____将直接出现在推文中,还是有一些其他链接像以前一样重定向到这个链接?
前任:
screen shot 2018-07-17 at 2 07 32 am

我正在研究并发现通过 twitter api 进入推文的所有链接都是一个 twitter 链接,它被重定向到实际页面。 我想知道我们是否使用链接来查找节点,并且推文包含多个public.org/n/__ (一个用于引用公共实验室帖子上的帖子,其他可能用于公共实验室帖子本身的任何节点内容)然后在那个案例注释可能会被添加到错误的节点,因为我们不知道应该添加此注释的实际节点是什么? 你怎么认为?
screen shot 2018-07-17 at 3 40 13 am
screen shot 2018-07-17 at 3 40 23 am

@jywarren那么,我应该通过哪种方式实现它? 使用 node_id 或其他方式。 我正在最终确定实施方式。

当我们没有发生自动推文时,这有点复杂,
因为我们无法格式化原始文件。 我可以向我们的员工提出
今天打电话或公开电话(https://publiclab.org/opencall),我们可以尝试
想出一个好的前进方向!

2018 年 7 月 16 日星期一下午 6:20 Naman Gupta [email protected]
写道:

我正在研究,发现推文中的所有链接都通过
twitter api 是一个 twitter 链接,它被重定向到实际页面。 我曾是
想知道我们是否使用链接来查找节点并且推文包含多个
public.org/n/__(一个用于公共实验室的参考帖子,其他可能是
在公共实验室帖子本身的任何节点内容中使用)然后在这种情况下
评论可能会被添加到错误的节点,因为我们不知道
我们应该添加这个评论的实际节点? 你怎么认为?
[图片:屏幕截图 2018-07-17 at 3 40 13 am]
https://user-images.githubusercontent.com/20709985/42786554-59b06d14-8974-11e8-96bd-e2c804da47c9.png
[图片:屏幕截图 2018-07-17 at 3 40 23 am]
https://user-images.githubusercontent.com/20709985/42786555-59f820f0-8974-11e8-9aa8-ef78abc46dfe.png


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-405399249
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJwu8hr_XV85dxj3NlaTRgsBCaZ8jks5uHRF3gaJpZM4TrSYe
.

我将使用 twitter gem,我们也可以使用它来进行自动推文——只是让你知道我们可以在不使用任何服务的情况下进行自动推文。 我会寻找格式化的方法。

好的,所以我们正在考虑的是:

  1. 首先使用 OAuth 登录系统仅实现“已识别”的 Twitter 用户的回复
  2. 尝试通过隔离publiclab.org/n/_____来查找推文
  3. 我们是否可以仅向版主显示列表中的所有评论并允许他们以某种方式“批准”? 你能想一想它是如何工作的吗?
  4. 如果我们确实开始允许所有推文回复,让我们考虑在开始收到大量垃圾邮件时“关闭”它,这样我们就可以尝试一下。
  5. 有没有办法显示嵌入的推文及其回复,然后,如果有推文回复,通知原始发帖人,但不实际复制它们?

我刚和@SidharthBansal 打了个电话。 我问过这个。 所以我们现在没有保存 twitter 句柄,这需要识别用户。 我认为我们应该把它保存在某个地方,以便我们能够识别它。 @jywarren

@namangupta01您可以迁移用户标签模型并添加处理程序字段。
如果您需要任何进一步的帮助,请随时与我联系。
谢谢

谢谢悉达多! :)

2018 年 7 月 19 日星期四晚上 9:55 Sidharth Bansal [email protected]
写道:

https://github.com/publiclab/plots2/blob/master/doc/Omniauth.md
https://github.com/publiclab/plots2#ssl -in-development
publiclab/plots2#2893 https://github.com/publiclab/plots2/issues/2893
这些肯定会帮助你


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-406336137
或使线程静音
https://github.com/notifications/unsubscribe-auth/ATwCYUJLLS9Lc722_YJWLBdLhWed_orrks5uILMDgaJpZM4TrSYe
.

我认为 request.env['omniauth.auth']["info"]["urls"] 会起作用。

重要提示:所有提供者在其哈希中使用不同的名称提供不同的字段。 因此,请注意填写所有其他提供商信息——如果他们不是 Twitter,则 url 字段为 NULL

请参阅此处给出的哈希值并进行比较:

https://github.com/arunagw/omniauth-twitter
https://github.com/mkdynamic/omniauth-facebook
https://github.com/omniauth/omniauth-github
https://github.com/zquestz/omniauth-google-oauth2

看到哈希是不同的。 另外,请在您的 prs 中接受我的评论。 我很乐意提供帮助。

Google_oauth2 也有相同的名称 --> info -->urls
但是 facebook 在 extra_info 中有处理程序。 所以,请获取 [extra][raw_info][link] 并作为处理程序存储在 user_tag 中。
Github --> 文档中没有写。 可能它不提供。 搜索 github 是否提供而不是将 github 的处理程序分配给该字段
所有不能在像 Github 这样的处理程序中设置的,你可以将它们设置为 NULL。

@jywarren我应该为每个 oauth 创建单独的列吗?

用户标签模型并添加处理程序字段

我想知道我们是否可以创建一组额外的自定义oa-字段
在平面键:值系统中获取此信息,而不是迁移
数据库... Sidharth,你怎么看?

2018 年 7 月 19 日星期四下午 2:18 Naman Gupta [email protected]
写道:

@jywarren https://github.com/jywarren我应该为
每个oauth?


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-406368740
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ_XCeor_CeJB2aXO3eJHr0FJhX2rks5uIM1agaJpZM4TrSYe
.

我们不需要使 user_tag 过于复杂。 新手应该很容易理解。
我们以后需要多次添加字段。 因此,考虑我们根据这种方法所做的情况,然后提供程序将具有uid:provider :handler 的值。 Github 不提供任何处理程序。 现在情况来了,我们需要在个人资料页面上显示图像。 所以这会产生问题。 那么我们需要迁移数据库。 所以,我的意见是从现在开始迁移数据库。

我们需要看看将来我们需要在登录后实现进出fb或twitter的情况,然后我们还需要其他字段。 我们不能让价值更长

扁平系统也是一个不错的选择。 但我担心 user_tags 未来的可读性会更好。

让我们考虑一下——您要对 user_tag 模型进行哪些修改? 我们可以只添加一个文本列,并将 JSON 存储在其中吗? 我正在尝试考虑最可维护和最灵活的方式,因此我们在 user_tag 模型上没有很多非常具体的功能,这些功能不能用于不同的目的。 说得通?

谢谢大家!

@jywarren是的,我明白你的意思。 让我们附加 user_tag 的 val 字段。

我确实认为使用更长的文本字段可能对很多事情有用,所以
如果您只想存储其他东西的集合
key:value ,我们可以这样做...

2018 年 7 月 19 日星期四下午 6:00 Sidharth Bansal [email protected]
写道:

@jywarren https://github.com/jywarren是的,我明白了。 让我们
附加 user_tag 的 val 字段。


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-406427465
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ4Hlow0UZgw-e-I0WBp9Lpt0MiC0ks5uIQFKgaJpZM4TrSYe
.

@SidharthBansal每次我在本地通过 Twitter 登录时,它都会重定向到公共实验室网站。 任何的想法?

我想我明白了为什么会发生

@SidharthBansal我收到此错误,请帮助:
screen shot 2018-07-21 at 12 28 05 am

screen shot 2018-07-21 at 12 30 17 am

添加高级设置以允许 https 访问不安全的网站

127.0.0.1:3001 不安全

解决感谢@SidharthBansal

@jywarren我今天正在寻找如何实现扁平系统。
以下文件是我的 Soc 项目中的主文件。
https://github.com/publiclab/plots2/blob/f2fe98da351a562152a85bd068acb1a9e6e7f7c0/app/models/user_tag.rb#L24 -L30
如果我们确实附加了字符串,那么整个 Soc 项目将需要在多个位置进行更新。 此外,所有测试都将失败。 我们需要重新编写所有测试。
@namangupta01你有什么建议?
如果我们在数据库中创建一个新字段,那么可以修改 Soc 项目而不会产生任何冲突。 Soc Project 的所有测试和代码将保持原样。

我认为@jywarren在这里说过,我们可以添加新的文本字段,我们可以在其中存储我们得到响应的 JSON 对象。

让我们考虑一下——您要对 user_tag 模型进行哪些修改? > 我们可以只添加一个文本列,并将 JSON 存储在其中吗? 我正在尝试考虑最可维护和 > > 灵活的方式,因此我们在 user_tag 模型上没有很多非常具体的功能,这些功能不会
可重复用于不同的目的。 说得通?

我是对的@jywarren吗?

让我们等待 jeffs 的输入。

是的......

我的另一个担忧是,当我们每 5 秒或每 10 秒轮询一次 Twitter 上的新回复时,我们将查找数据库中是否存在特定句柄。 假设在每个响应中我们得到一些回复,然后我们必须找到句柄,我们将解析文本字段以提取句柄并检查该句柄是否存在。 它会增加系统的时间复杂度吗? 因为对于每个句柄检查,我们都会做O(n)的工作? 在这种情况下,也没有索引可以使数据库事务更快。
抱歉@jywarren ,这需要一些时间,因为我想在打开 pr 之前完全确认实施,因为这将是一个复杂的系统。

你好! 是的,我是说如果你想存储很多内容
以不那么data的方式一起,我们可以在
user_tag 表,并在其中存储 JSON。 但是你能提供一个明确的例子吗
您要存储的数据类型,以便我们知道它是否合适
怎么存放呢? 谢谢!

对于复杂性,我同意,这可能会产生很大的负载。 你可以吗
为一系列查询编写伪代码,我可以帮助优化吗? 我是
思考,我们可以制作一个更有效的查询,但帮助我弄清楚
首先是所需的步骤。 谢谢!

2018 年 7 月 20 日星期五下午 4:00 Naman Gupta [email protected]
写道:

我的另一个担忧是,我们何时会在 twitter 上轮询新的回复
每 5 秒或每 10 秒,我们将找到是否特别
句柄在数据库中是否存在。 假设在每个响应中我们得到一些
回复,然后我们必须找到我们将要解析的句柄
用于提取句柄并检查该句柄是否存在的文本字段
或不。 它会增加系统的时间复杂度吗? 因为对于
每个句柄检查我们都会做 O(n) 的工作吗? 而且也没有索引
在这种情况下可以使数据库事务更快。
抱歉@jywarren https://github.com/jywarren这需要一些时间
因为我想完全确认之前的实施
打开公关,因为它将是一个复杂的系统。


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-406711222
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ7Z9x-9Cwedez8T-gsMnYR4VQ75zks5uIjbCgaJpZM4TrSYe
.

Pseudocode:

  1. 从 Twitter 获取最新回复:
  2. 对于回复中的每个回复:
    使用publiclab.org/n/_____检查它是否属于任何节点或帖子,如果该节点存在,则使用推文回复器查找用户是否存在。 如果用户存在添加评论。
    tweets = client.search("to:publiclab", since_id: 23423423).collect do |tweet| node = Node.where(some_condition) #To find if node exists if node.any? node = node.first tweet_user = tweet.user UserTag.all.each do |user_tag| if(some_condtion_to_check if user handle exists) add_comment end end end end

截至目前我只需要存储推特句柄但不知道什么功能
我们将来想要像个人资料图片等等?

2018 年 7 月 21 日星期六凌晨 1:52 Jeffrey Warren [email protected]
写道:

你好! 是的,我是说如果你想存储很多内容
以不那么data的方式一起,我们可以在
user_tag 表,并在其中存储 JSON。 但是你能提供一个明确的例子吗
您要存储的数据类型,以便我们知道它是否合适
怎么存放呢? 谢谢!

对于复杂性,我同意,这可能会产生很大的负载。 你可以吗
为一系列查询编写伪代码,我可以帮助优化吗? 我是
思考,我们可以制作一个更有效的查询,但帮助我弄清楚
首先是所需的步骤。 谢谢!

2018 年 7 月 20 日星期五下午 4:00 Naman Gupta [email protected]
写道:

我的另一个担忧是,我们何时会在 Twitter 上投票以获取新的回复

每 5 秒或每 10 秒,我们将找到是否特别
句柄在数据库中是否存在。 假设在每个响应中我们得到一些
回复,然后我们必须找到我们将要解析的句柄
用于提取句柄并检查该句柄的文本字段
存在
或不。 它会增加系统的时间复杂度吗? 因为对于
每个句柄检查我们都会做 O(n) 的工作吗? 而且也没有索引
在这种情况下可以使数据库事务更快。
抱歉@jywarren https://github.com/jywarren这需要一些时间
因为我想完全确认之前的实施
打开公关,因为它将是一个复杂的系统。


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
< https://github.com/publiclab/plots2/issues/2671#issuecomment -406711222
,
或使线程静音
<
https://github.com/notifications/unsubscribe-auth/AABfJ7Z9x-9Cwedez8T-gsMnYR4VQ75zks5uIjbCgaJpZM4TrSYe

.


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-406716657
或使线程静音
https://github.com/notifications/unsubscribe-auth/ATwCYaP_Iy1H4Uxs83vmG95ucdrSLgxtks5uIjwCgaJpZM4TrSYe
.

@jywarren我在 #3117 中添加了迁移以保存 JSON 以用于omniauth 响应,只是为了给它一个开始......如果需要任何更改,请告诉我?

@jywarren关于pseudocode和公关的任何评论和反馈?

我希望尽快完成这项工作。

你能分享一个存储在这个新列中的典型 JSON 输出,以便我们看看吗? 谢谢!

对于伪代码,您可以执行以下操作:

since = comments.where(since_id not null).last # get most recent comment-from-tweet time
tweets = client.search("to:publiclab", since_id: 23423423).collect do |tweet|
 node = Node.where(some_condition) #To find if node exists
 if node.any?
   node = node.first
   tweet_user = tweet.user
   ruser = UserTag.find_by(twitter_id: tweet.user)
   add_comment(since_id: since, ruser) unless ruser.nil? 
end
end

它可能更优化?

这是示例 JSON:
````
{
“提供者”:“推特”,
"uid":"849503183529545728",
“信息”:{
"昵称":"itsmenamangupta",
"name":"纳曼古普塔",
“电子邮件”:“ [email protected] ”,
“地点”:””,
“图像”:“ http://pbs.twimg.com/profile_images/950001110378401793/mBAtBXyI_normal.jpg ”,
"描述":"GSoC'18 @PublicLab",
“网址”:{
“网站”:“ https://t.co/fqLSxIlYFH ”,
“推特”:“ https://twitter.com/itsmenamangupta
}
},
“证书”:{
“令牌”:“849503183529545728-fgqcxtgihvrrKd2icj67QpspT5bKntD”,
“秘密”:“ZDTD5HsexliY2Tnrv6aSEVSqPVvbDLY2YDW9S5VeDmmyK”
},
“额外的”:{
“访问令牌”:{
“令牌”:“849503183529545728-fgqcxtgihvrrKd2icj67QpspT5bKntD”,
“秘密”:“ZDTD5HsexliY2Tnrv6aSEVSqPVvbDLY2YDW9S5VeDmmyK”,
“消费者”:{
“关键”:“H59J9kJBVQvtZvWhr2SUAHt4o”,
“秘密”:“GEQOygPITjGj2Imzg5ALJeCqE0GdQU2GAmTYOS9kEPcLVlMxQu”,
“选项”:{
"signature_method":"HMAC-SHA1",
"request_token_path":"/oauth/request_token",
"authorize_path":"/oauth/authenticate",
"access_token_path":"/oauth/access_token",
“代理”:空,
“方案”:“标题”,
"http_method":"post",
“调试输出”:空,
"oauth_version":"1.0",
“网站”:“ https://api.twitter.com
},
“调试输出”:空,
“http”:{
"地址":"api.twitter.com",
“端口”:443,
“本地主机”:空,
“本地端口”:空,
"curr_http_version":"1.1",
“keep_alive_timeout”:2,
"last_communicated":null,
“close_on_empty_response”:假,
“套接字”:空,
“开始”:假,
"open_timeout":30,
“读超时”:30,
“continue_timeout”:空,
“调试输出”:空,
“proxy_from_env”:真,
“proxy_uri”:空,
“代理地址”:空,
“代理端口”:空,
“proxy_user”:空,
“proxy_pass”:空,
“use_ssl”:真,
“ssl_context”:{
“验证模式”:0,
“验证主机名”:真
},
“ssl_session”:{

           },
           "sspi_enabled":false,
           "ca_file":null,
           "ca_path":null,
           "cert":null,
           "cert_store":null,
           "ciphers":null,
           "key":null,
           "ssl_timeout":null,
           "ssl_version":null,
           "verify_callback":null,
           "verify_depth":null,
           "verify_mode":0
        },
        "http_method":"post",
        "uri":"https://api.twitter.com"
     },
     "params":{
        "oauth_token":"849503183529545728-fgqcxtgihvrrKd2icj67QpspT5bKntD",
        "oauth_token_secret":"ZDTD5HsexliY2Tnrv6aSEVSqPVvbDLY2YDW9S5VeDmmyK",
        "user_id":"849503183529545728",
        "screen_name":"itsmenamangupta"
     },
     "response":{
        "cache-control":[
           "no-cache, no-store, must-revalidate, pre-check=0, post-check=0"
        ],
        "connection":[
           "close"
        ],
        "content-disposition":[
           "attachment; filename=json.json"
        ],
        "content-length":[
           "664"
        ],
        "content-type":[
           "application/json;charset=utf-8"
        ],
        "date":[
           "Sat, 21 Jul 2018 10:51:03 GMT"
        ],
        "expires":[
           "Tue, 31 Mar 1981 05:00:00 GMT"
        ],
        "last-modified":[
           "Sat, 21 Jul 2018 10:51:03 GMT"
        ],
        "pragma":[
           "no-cache"
        ],
        "server":[
           "tsa_k"
        ],
        "set-cookie":[
           "personalization_id=\"v1_pEJH6fv6zGSET2PG1MYRCw==\"; Expires=Mon, 20 Jul 2020 10:51:03 GMT; Path=/; Domain=.twitter.com",
           "lang=en; Path=/",
           "guest_id=v1%3A153217026311648297; Expires=Mon, 20 Jul 2020 10:51:03 GMT; Path=/; Domain=.twitter.com"
        ],
        "status":[
           "200 OK"
        ],
        "strict-transport-security":[
           "max-age=631138519"
        ],
        "x-access-level":[
           "read-write-directmessages"
        ],
        "x-connection-hash":[
           "cf7caac1e8db2d46c6043fb2287ca32b"
        ],
        "x-content-type-options":[
           "nosniff"
        ],
        "x-frame-options":[
           "SAMEORIGIN"
        ],
        "x-rate-limit-limit":[
           "75"
        ],
        "x-rate-limit-remaining":[
           "71"
        ],
        "x-rate-limit-reset":[
           "1532170356"
        ],
        "x-response-time":[
           "238"
        ],
        "x-transaction":[
           "0085940a005f5411"
        ],
        "x-twitter-response-tags":[
           "BouncerExempt",
           "BouncerCompliant"
        ],
        "x-xss-protection":[
           "1; mode=block; report=https://twitter.com/i/xss_report"
        ]
     }
  },
  "raw_info":{
     "id":849503183529545728,
     "id_str":"849503183529545728",
     "name":"Naman Gupta",
     "screen_name":"itsmenamangupta",
     "location":"",
     "description":"GSoC'18 @PublicLab",
     "url":"https://t.co/fqLSxIlYFH",
     "entities":{
        "url":{
           "urls":[
              {
                 "url":"https://t.co/fqLSxIlYFH",
                 "expanded_url":"http://www.namangupta.me",
                 "display_url":"namangupta.me",
                 "indices":[
                    0,
                    23
                 ]
              }
           ]
        },
        "description":{
           "urls":[

           ]
        }
     },
     "protected":false,
     "followers_count":16,
     "friends_count":32,
     "listed_count":0,
     "created_at":"Wed Apr 05 06:05:16 +0000 2017",
     "favourites_count":86,
     "utc_offset":null,
     "time_zone":null,
     "geo_enabled":false,
     "verified":false,
     "statuses_count":42,
     "lang":"en",
     "contributors_enabled":false,
     "is_translator":false,
     "is_translation_enabled":false,
     "profile_background_color":"000000",
     "profile_background_image_url":"http://abs.twimg.com/images/themes/theme1/bg.png",
     "profile_background_image_url_https":"https://abs.twimg.com/images/themes/theme1/bg.png",
     "profile_background_tile":false,
     "profile_image_url":"http://pbs.twimg.com/profile_images/950001110378401793/mBAtBXyI_normal.jpg",
     "profile_image_url_https":"https://pbs.twimg.com/profile_images/950001110378401793/mBAtBXyI_normal.jpg",
     "profile_link_color":"FFFFFF",
     "profile_sidebar_border_color":"000000",
     "profile_sidebar_fill_color":"000000",
     "profile_text_color":"000000",
     "profile_use_background_image":false,
     "has_extended_profile":true,
     "default_profile":false,
     "default_profile_image":false,
     "following":false,
     "follow_request_sent":false,
     "notifications":false,
     "translator_type":"none",
     "suspended":false,
     "needs_phone_verification":false,
     "email":"[email protected]"
  }

}
}
````

是的,我们可以使用您指定的代码,我们需要 $ user_tag twitter_id列吗?

是的,问题是你不能通过 json 搜索,可能......你可以
全文搜索,但它有点贵,对吧? @sidharthBansal - 做什么
你认为这是一个好方法吗?

2018 年 7 月 23 日星期一下午 3:49 Naman Gupta [email protected]
写道:

是的,我们可以使用您指定的代码,我们需要 twitter_id 列
在 user_tag 表中?


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-407178930
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJxV7kQpSKvSyCCpDQlFN6fWT_-yqks5uJiibgaJpZM4TrSYe
.

是的,它会让它变得昂贵。
username直接添加到所有 oauth 服务的列会有所帮助吗?

大家好,只是想提醒一下,我们也在 usertags 中存储各种社交帐户的用户名,所以如果你们决定切换到存储用户名的表,请打开后续问题以合并该系统。 谢谢!

是否值得自动生成 [twitter:jywarren] 样式标签
OA系统? 我们确实需要小心,没有人会错误地将他们的
使用 [twitter:jywarren] 样式标签的帐户,所以也许我们需要
结合这些; Gaurav,你能解释一下那个系统是怎么回事吗?
作品?

2018 年 7 月 23 日星期一下午 4:39 Gaurav Sachdeva [email protected]
写道:

大家好,只是想提醒一下,我们存储各种社交的用户名
用户标签中的帐户也是如此,所以如果你们决定切换到表格
然后存储用户名,请打开后续问题以合并该系统。
谢谢!


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-407193340
或使线程静音
https://github.com/notifications/unsubscribe-auth/AABfJ79eJpa40xw7imZ_m2K8A2B3F4v0ks5uJjRdgaJpZM4TrSYe
.

大家好,只是想提醒一下,我们也在 usertags 中存储各种社交帐户的用户名,所以如果你们决定切换到存储用户名的表,请打开后续问题以合并该系统。 谢谢!

@Gauravano ,到目前为止,我们还没有存储社交媒体用户的用户名。 目前只保存用户 ID 和提供者名称。
@Gauravano你能详细说明你指的是什么问题吗? 我们没有制作新桌子。 我们正在迁移用户标签。

是的,我们可以使用您指定的代码,我们需要 user_tag 表中的 twitter_id 列吗?

是的,问题是你不能通过 json 搜索,可能......你可以全文搜索,但它有点贵,对吧? @SidharthBansal - 您认为这里的好方法是什么?

@jywarren@namangupta01我们可以存储用户名。

我们确实需要小心,没有人使用 [twitter:jywarren] 样式标签错误地关联他们的帐户,所以也许我们需要结合这些?

我在四月份就这个案子发了一个公关。 没有人能够创建任何名称为 oauth:________ 的标签
因此,无需担心这个问题。 您可以通过转到个人资料页面来检查此内容。
截图以便更好地理解。
image

从 OA 系统自动生成 [twitter:jywarren] 样式标签是否值得?

@jywarren我们目前仅从 OAuth 生成 OAuth 用户标签。 没有其他方法可以生成它们。

将直接用户名添加到所有 oauth 服务的列会有帮助吗?

一次又一次地添加多个列无济于事。 我强烈建议存储整个哈希并在需要时使用我们需要的东西。 例如,在 naman 使用来自 auth hash 的处理程序之后。 我们可以使用图像 url 中的图像显示在公共实验室资料页面上。 我们目前使用 Gravatar。

相关问题 #3125
我们正在存储处理程序。 一些提供者允许用户更改他们的处理程序。 因此,我们需要一种方法来在每次用户登录或身份验证过期时更改身份验证哈希。 auth 给出过期日期和时间。 所以我们可以使用它并相应地刷新身份验证哈希。 请在 #3125 中讨论这个子问题,以便我们可以在这个问题中坚持 user_tag 迁移。

谢谢

@jywarren @SidharthBansal @namangupta01 ,我指的是这个系统 -

我们提供 PL 用户输入他们的各种社交媒体用户名,如下所示 -
this_one

用户将社交平台添加为键,将他的用户名添加为值-
user_2

将该用户标签添加到他的个人资料后-
profile_tags

谢谢!

@Gauravano我想使用它不会很好,因为我可以添加任何我想要的用户名?

作为@jywarren ,我们应该合并OA系统吗?

好的,存储哈希是有道理的——为什么要进行额外的转换,对吧? 凉爽的。

并 +1 合并这些系统。 早期的系统很棒,但由于上述原因,它会从这里的集成中受益! 感谢大家!

是的,存储哈希似乎是个不错的选择👍

2018 年 7 月 24 日星期二晚上 10:45 Jeffrey Warren [email protected]
写道:

好的,存储哈希是有道理的——为什么要进行额外的转换,对吧?
凉爽的。

并 +1 合并这些系统。 早期的系统很棒,但会
由于上述原因,可以从这里的集成中受益! 感谢大家!


你收到这个是因为你被提到了。
直接回复此邮件,在 GitHub 上查看
https://github.com/publiclab/plots2/issues/2671#issuecomment-407482926
或使线程静音
https://github.com/notifications/unsubscribe-auth/ATwCYU7kYuvbVUbybfTrYum5r2lVLYevks5uJ1Y-gaJpZM4TrSYe
.

@jywarren @Gauravano @SidharthBansal你们能告诉我如何从数据库中保存的字符串中获取哈希,因为我找不到方法吗? 谢谢

@Gauravano ,我强烈建议您打开另一个问题,将社交媒体图标与 OA 合并并将其链接到此处,这样讨论就不会产生分歧。
谢谢你的好建议。

@SidharthBansa我已经尝试了上面的链接,但它们没有用

我遇到了问题..我们必须将auth变量显式转换为哈希才能解决。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

grvsachdeva picture grvsachdeva  ·  3评论

shapironick picture shapironick  ·  3评论

first-timers[bot] picture first-timers[bot]  ·  3评论

grvsachdeva picture grvsachdeva  ·  3评论

keshavsethi picture keshavsethi  ·  3评论