Implemented message file source and sink. Issue #101
diff --git a/grc/gsm_block_tree.xml b/grc/gsm_block_tree.xml
index 2503710..6496fd3 100644
--- a/grc/gsm_block_tree.xml
+++ b/grc/gsm_block_tree.xml
@@ -42,6 +42,8 @@
       <block>gsm_bursts_printer</block>
       <block>gsm_burst_sink</block>
       <block>gsm_burst_source</block>
+      <block>gsm_message_file_sink</block>
+      <block>gsm_message_file_source</block>
       <block>gsm_burst_sink_qa</block>
       <block>gsm_burst_source_qa</block>
       <block>gsm_extract_system_info</block>
diff --git a/grc/misc_utils/CMakeLists.txt b/grc/misc_utils/CMakeLists.txt
index 5a3f874..0ace0d8 100644
--- a/grc/misc_utils/CMakeLists.txt
+++ b/grc/misc_utils/CMakeLists.txt
@@ -26,6 +26,8 @@
     gsm_bursts_printer.xml
     gsm_clock_offset_corrector.xml
     gsm_tmsi_dumper.xml
+    gsm_message_file_sink.xml
+    gsm_message_file_source.xml
     gsm_burst_sink.xml
     gsm_burst_source.xml
     gsm_burst_source_qa.xml
diff --git a/grc/misc_utils/gsm_message_file_sink.xml b/grc/misc_utils/gsm_message_file_sink.xml
new file mode 100644
index 0000000..5d4975d
--- /dev/null
+++ b/grc/misc_utils/gsm_message_file_sink.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<block>
+  <name>Message file sink</name>
+  <key>gsm_message_file_sink</key>
+  <import>import grgsm</import>
+  <make>grgsm.message_file_sink($filename)</make>
+
+  <param>
+    <name>Destination file</name>
+    <key>filename</key>
+    <value>/tmp/output.msg</value>
+    <type>file_open</type>
+  </param>
+
+  <sink>
+    <name>in</name>
+    <type>message</type>
+  </sink>
+  
+  <doc>
+This block stores incoming gsm messages to a file.
+  </doc>
+</block>
diff --git a/grc/misc_utils/gsm_message_file_source.xml b/grc/misc_utils/gsm_message_file_source.xml
new file mode 100644
index 0000000..7095749
--- /dev/null
+++ b/grc/misc_utils/gsm_message_file_source.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0"?>
+<block>
+  <name>Message file source</name>
+  <key>gsm_message_file_source</key>
+  <import>import grgsm</import>
+  <make>grgsm.message_file_source($filename)</make>
+
+  <param>
+    <name>Source file</name>
+    <key>filename</key>
+    <value>/tmp/output.msg</value>
+    <type>file_open</type>
+  </param>
+
+  <source>
+    <name>out</name>
+    <type>message</type>
+  </source>
+  
+  <doc>
+This block outputs gsm messages stored in a file.
+  </doc>
+</block>