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
関連記事
-
pythonのsqlalchemyで嵌った話
エラーメッセージ InvalidRequestError: SQL expres …
-
CentOS 6でPythonからOracleに接続する
OracleのデータをPythonでさわりたくて、その実行環境がCentOS6の …
-
Pepperで撮影した写真をAmazon Rekognitionで分析してその結果をPepperがしゃべる ~(2)Pepper編~
Pepperで撮影した写真をAmazon Rekognitionで分析してその結 …
-
「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました
「【第2回】データ分析勉強会(尼崎Pythonの会#1)」に行ってきました。 略 …
-
SQLAlchemy Session.executeでinsertしてAUTO INCREMENTでセットされたプライマリキーを取得したい
PythohのORMライブラリSQLAlchemyでMySQLにインサートしたレ …
-
Apple Silicon M1 MacBook ProにJupyter Notebookをインストールしました
Python – Jupyter NotebookをMac M1 搭 …
-
Pepper 開発 ワークショップ初級~中級~番外編に1日で一気に参加した
Pepperの開発方法が知りたかったので、Pepperアトリエ秋葉原 with …
-
「大阪Pythonユーザの集まり」に行ってきました
「大阪Pythonユーザの集まり」 に行ってきました。 あんまりメモ取れてません …
-
Python SQLAlchemy MySQLでテーブルを指定せずにFunctionを使う
難しく考えて悩んでいましたが、queryに書いてやればいいだけでした。 sess …
-
個人のGoogleカレンダーの予定をPythonで取得する
Google Calendar Twilio ReminderのGoogleカレ …