Rocket.ChatのAPIでユーザーを一括登録する
Rocket.Chatの管理画面にインポートのメニューはあって、どうやらusers.csvを作って、zipにしてアップロードすればいいらしい、というのはわかったのですが、公式のCSVのページを見ると、パスワードは指定できないらしいです。
なるほど。
登録メールを受けてユーザーが自分で設定するのですね。
そうすればパスワードを知っている人が減る分セキュアですものね。
だがしかし、今回は研修で一時的に使う環境で、扱うデータも機密ではないし、ユーザーは書き込みもできないので、こちらから送るデータを手元で見てほしいだけ。
なので、パスワードはこちらで設定したい。
なので、APIから作ることにしました。
こちらも公式のUsers Createを確認して、まずはPostmanで1ユーザーだけ作成してみて、問題ないことを確認しました。
あとは、ローカルのPythonで、同じディレクトリに置いたCSVを読み込んで登録してしました。
CSVのフォーマットはこちらです。
メールアドレス, パスワード
nameとusernameは、メールアドレスの@より前にしました。
API実行時に必要なトークンとユーザーIDはこちら「Rocket.ChatにAPIで投稿するテスト(Postman)」をご参照ください。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
import csv import json import requests url = 'http://xxxxxxxxxxxxxx:3000/api/v1/users.create' headers = { 'X-Auth-Token': 'xxxxxxxxxxxxxxxxxxxxxxxxxxxx', 'X-User-Id': 'xxxxxxxxxxxxxx', 'Content-Type': 'application/json' } with open('users.csv') as f: reader = csv.reader(f) for row in reader: name = row[0][0:row[0].find('@')] user = { 'email': row[0], 'name': name, 'password': row[1], 'username': name } response = requests.post( url, data=json.dumps(user), headers=headers ) print(response.text) |
最後までお読みいただきましてありがとうございました!
「AWS認定資格試験テキスト&問題集 AWS認定ソリューションアーキテクト - プロフェッショナル 改訂第2版」という本を書きました。
「AWS認定資格試験テキスト AWS認定クラウドプラクティショナー 改訂第3版」という本を書きました。
「ポケットスタディ AWS認定 デベロッパーアソシエイト [DVA-C02対応] 」という本を書きました。
「要点整理から攻略するAWS認定ソリューションアーキテクト-アソシエイト」という本を書きました。
「AWSではじめるLinux入門ガイド」という本を書きました。
開発ベンダー5年、ユーザ企業システム部門通算9年、ITインストラクター5年目でプロトタイプビルダーもやりだしたSoftware Engineerです。
質問はコメントかSNSなどからお気軽にどうぞ。
出来る限りなるべく答えます。
このブログの内容/発言の一切は個人の見解であり、所属する組織とは関係ありません。
このブログは経験したことなどの共有を目的としており、手順や結果などを保証するものではありません。
ご参考にされる際は、読者様自身のご判断にてご対応をお願いいたします。
また、勉強会やイベントのレポートは自分が気になったことをメモしたり、聞いて思ったことを書いていますので、登壇者の意見や発表内容ではありません。
ad
ad
関連記事
-
Feedlyのフィードを自動でSlackへ投稿する(AWS Lambda , Amazon DynamoDB)
やりたいこと Feedlyで共有したいフィードに特定のタグを付けます。 特定のタ …
-
docomo Developer supportの 雑談対話APIから自然対話APIへ移行しました
LINEやSlackのbotで重宝していた、雑談対話APIが終了する、とのことで …
-
SendGrid(sendgrid_python)でメール送信してイベントの情報からメール本文をたどれるようにしておく
動的に生成するメールで実際にどんな本文が送信されたかを記録しておきたいときもある …
-
Python openpyxlで結合セルを含むExcelファイルを開くと罫線が消える
PythonのExcelを読み書きするためのライブラリ、openpyxlで結合セ …
-
Pepper 開発 ワークショップ初級~中級~番外編に1日で一気に参加した
Pepperの開発方法が知りたかったので、Pepperアトリエ秋葉原 with …
-
「MonotaRo Tech #3 テスト自動化」に行ってきました
モノタロウさんの「MonotaRo Tech #3 テスト自動化」に行ってきまし …
-
SQLAlchemyのModelクラスをMySQLから自動生成する
SQLAlchemyのMySQLモデルを書くのが面倒で、きっと何かツールがあるの …
-
「神戸Pythonの会 #2 meetup」に行ってきました
「神戸Pythonの会 #2 meetup」に行ってきました。 所感など Ato …
-
feedlyでタグ付けした記事を自動でメール配信する
feedlyを使っていて、良記事や知っておいて欲しい記事とかを部門とかチームとか …
-
pythonのsqlalchemyで嵌った話
エラーメッセージ InvalidRequestError: SQL expres …