データ構造マイグレーション失敗時の対応
Slim Chatworkバージョン0.5.0より追加された「データ構造マイグレーション」処理は、Slim Chatworkの内部に保持されたデータの構造を適切にアップデート・メンテナンスを実施する為に行われる処理機能の1つです。
多くの場合、アップデート直後にこの「データ構造マイグレーションウィザード」が表示され、案内されたステップを踏むことで処理が完了します。
正常にアップデート処理が完了するとChatworkページが自動再読み込みされ、Slim Chatworkのデータ構造のアップデート+データの引き継ぎが完了します。
特に問題無く処理が完了する事が殆どですが、何らかの理由で処理に失敗した場合は「データ構造マイグレーションウィザード」のステップ1の操作で保存した更新処理前のデータを用いて手動で設定を行うことが出来ます。
更新処理前のデータを用いた手動設定の方法
Section titled “更新処理前のデータを用いた手動設定の方法”基本的な手動設定の流れ
Section titled “基本的な手動設定の流れ”-
「データ構造マイグレーションウィザード」のステップ1の操作で手元に保存した更新処理前のデータ(.jsonファイル)を用意します。
-
jsonファイルをエディタなどを用い開き、
key名を元にSlim Chatworkの設定項目と突き合わせ、valueと同じ値で設定します。 -
この作業を繰り返し、全ての設定を行います。
jsonファイルの見方
Section titled “jsonファイルの見方”保存したjsonファイルは以下の様な形をしておりkey名が設定項目とリンクします。
{ "key": value,}例えばjsonファイルの中身が以下の時、key名がrange_avatorなので、リンクする設定項目は「ルームリストサイズ調整 > アバター」と推測ができそうです。この様な形でkey名を元にSlim Chatworkの設定項目と突き合わせながら手動設定を行っていきます。(key名の参考はこちら)
{ "range_avator": "25",}ただし上記はあくまで例で、「ルームリストサイズ調整 > アバター」のkey名が常にrange_avatorという訳ではなく、key名はSlim Chatowkのバージョンによって異なってきます。
詳しくはバージョン毎のkey名を参考下さい。
key名の参考
Section titled “key名の参考”バージョン0.4.5以前の場合
{ "adddayname": true, // その他 > 投稿日付に曜日を追加 "common": { // 内部処理用のデータ(無視可) "isFirstInstalled": false, "needDataMigration": true, "needReload": true, "popupScrollPosY": 0, "previousVersion": "0.4.5" }, "disable_posts_modifierkey_alt": true, // その他 > 装飾キー+EnterのAlt "disable_posts_modifierkey_ctrl": true, // その他 > 装飾キー+EnterのCtrl "disable_posts_modifierkey_meta": true, // その他 > 装飾キー+EnterのMeta "disable_posts_modifierkey_shift": true, // その他 > 装飾キー+EnterのShift "isFirstInstalled": true, // 内部処理用のデータ(無視可) "isReload": false, // 内部処理用のデータ(無視可) "range_avator": "25", // ルームリストサイズ調整 > アバター "range_chatinputh": "50", // メインコンテンツサイズ調整 > メッセージ入力時最大高 "range_chatroomfont": "14", // ルームリストサイズ調整 > チャットフォント "range_chatsummaryfont": "13", // ルームリストサイズ調整 > 概要欄フォント "range_chattextareafont": "14", // ルームリストサイズ調整 > メッセージ入力フォント "range_font": "12", // ルームリストサイズ調整 > フォント "range_padding": "8", // ルームリストサイズ調整 > 間隔 "resize_right_column": true, // その他 > 概要欄の高さを拡張 "scrollPosY": 1621, // 内部処理用のデータ(無視可) "statusswitchassist_isrestore": false, // ステータス変更アシストの追加・削除切り替え "statusswitchassist_registry": [ // ステータス変更アシストの登録データ { "selected": true, "tit": "【出社】" }, { "selected": false, "tit": "【在宅】" }, { "selected": false, "tit": "【離席】" }, { "selected": false, "tit": "【外出】" }, { "selected": false, "tit": "【お昼】" }, { "selected": false, "tit": "【休暇】" } ], "switch_all": true, // 全機能のスイッチ "switch_single_addtasklabels": true, // タスクラベリング機能のスイッチ "switch_single_maincontent": true, // メインコンテンツサイズ調整機能のスイッチ "switch_single_other": true, // その他機能のスイッチ "switch_single_roomlist": true, // ルームリストサイズ調整機能のスイッチ "switch_single_statusswitchassist": true, // ステータス変更アシスト機能のスイッチ "switch_single_syntaxhighlight": true, // シンタックスハイライト機能のスイッチ "switch_single_template": true, // メッセージテンプレート登録機能のスイッチ "template_registry": [ // メッセージテンプレート登録機能の登録データ { "color": "1a1a1a", "status": "true", "tit": "📑 囲みタグ", "txt": "[info]{@selected:}{@cursor:}[/info]" }, { "color": "1a1a1a", "status": "true", "tit": "📑 囲みタグ[タイトル]", "txt": "[info][title]{@cursor:}[/title]{@selected:}[/info]" }, { "color": "1a1a1a", "status": "true", "tit": "📝 code", "txt": "[code]{@selected:}{@cursor:}[/code]" }, { "color": "1a1a1a", "status": "true", "tit": "📐 罫線", "txt": "[hr]" }, { "color": "1a1a1a", "status": "true", "tit": "⏱ 現在時刻", "txt": "{@time:YYYY/MM/DD - H:mm:ss}" } ]}バージョン0.5.0以降の場合
{ // 内部処理用のデータ(無視可) "common": { "isFirstInstalled": false, "needDataMigration": true, "needReload": true, "popupScrollPosY": 0, "previousVersion": "0.5.0" }, // フォント変更機能のデータ "customFont": { "displayName": "", "fontFamilyName": "", "fontSerif": "", "fontUrl": "", "lang": "" }, // 各機能のスイッチのステータス "functionState": { "isAll": false, "isCustomFont": false, "isMaincontentSize": false, "isMessageTemplate": false, "isOther": false, "isRoomlistSize": false, "isStatusSwitchAssist": false, "isSyntaxhighlight": false }, // メインコンテンツサイズ調整機能のデータ "maincontentSize": { "chatInputHeight": 50, "chatRoomFontSize": 14, "chatSummaryFontSize": 13, "chatTextareaFontSize": 14 }, // メッセージテンプレート登録機能のデータ "messageTemplate": [ { "color": "1a1a1a", "status": "true", "tit": "📑 囲みタグ", "txt": "[info]{@selected:}{@cursor:}[/info]" }, { "color": "1a1a1a", "status": "true", "tit": "📑 囲みタグ[タイトル]", "txt": "[info][title]{@cursor:}[/title]{@selected:}[/info]" }, { "color": "1a1a1a", "status": "true", "tit": "📝 code", "txt": "[code]{@selected:}{@cursor:}[/code]" }, { "color": "1a1a1a", "status": "true", "tit": "📐 罫線", "txt": "[hr]" }, { "color": "1a1a1a", "status": "true", "tit": "⏱ 現在時刻", "txt": "{@time:YYYY/MM/DD - H:mm:ss}" } ], // その他機能のデータ "other": { "isAddDayName": false, "isDisablePostsModifierkey": false, "isDisablePostsModifierkeyAlt": true, "isDisablePostsModifierkeyCtrl": true, "isDisablePostsModifierkeyMeta": true, "isDisablePostsModifierkeyShift": true, "isDisableSpeakerNameEllipsis": false, "isExpandRightColumn": false, "isHideAvatar": false, "isHideBookmarkSwitcher": false, "isYakumono": false }, // ルームリストサイズ調整機能のデータ "roomlistSize": { "avatarSize": 25, "fontSize": 12, "padding": 8 }, // ステータス変更アシストのデータ "statusSwitchAssist": [ { "selected": true, "tit": "【出社】" }, { "selected": false, "tit": "【在宅】" }, { "selected": false, "tit": "【離席】" }, { "selected": false, "tit": "【外出】" }, { "selected": false, "tit": "【お昼】" }, { "selected": false, "tit": "【休暇】" } ], // シンタックスハイライト機能のデータ "syntaxhighlight": { "style": "" }}