Click here to Skip to main content
15,884,926 members
Articles / Web Development / ASP.NET
Article

IGotMessage - Send a Video Message

Rate me:
Please Sign up or sign in to vote.
4.33/5 (9 votes)
21 Feb 2008GPL39 min read 55.9K   6.5K   90   5
IGotMesasge is an open source Web-based application that allows individuals to easily record and send video messages to others. The software is free to download, install and use, and is easy to integrate with any website.

All screenshots are modified for security purposes.

screenshot.jpg

screenshot2.jpg

What is IGotMessage?

IGotMessage is an open source Web-based application that allows individuals to easily record and send video messages to others.

Hardware Requirements

  • Pentium III or above
  • 512 MB or more
  • At least 30 gigabytes (GB) of available space on the hard disk
  • Keyboard and mouse
  • Video adapter and monitor with Super VGA (800 x 600) or higher resolution
  • Sound card
  • Webcam
  • Speakers or headphones

Software Requirements

  • Windows XP or 2003
  • IIS 6.0 with SMTP service (The SMTP service is a relay agent only. E-mail messages are forwarded to an SMTP server for delivery.)
  • Microsoft .NET Framework 2.0
  • Microsoft SQL Server 2005
  • ASP.NET AJAX Extension 1.0 (You can download it from here for free. It is recommended that you use the default setting.)
  • Flash Media Server 3.0 (You can download a free developer edition from here. It is recommended that you use the default setting.)
  • SMTP server (You can use your domain's mail server or your ISP as your SMTP server for your outgoing email.)
  • Visual Studio 2005 (This is for developer only.)

Installation Instructions

Do-it-yourself installation is NOT recommended for novices. To Install IGotMessage v1.0, perform the following steps.

Step 1: Downloading and Unzipping Files

  1. Download the database, doc_record, IGMHousekeeping_bin and IGotMessage_bin to your machine.
  2. Unzip these files into a temporary directory on your hard disk.

Step 2: Enabling Audio & Video Streaming with Flash Media Server

Copy the folder doc_record under the FMS application folder. The full path might look something like this: C:\Program Files\ Adobe\Flash Media Server 3\applications\doc_record.

Step 3: Installing IGMHousekeeping Window Service

IGotMessage Housekeeping Window Service is responsible for deleting temporary files created by IGotMessage.

  1. Copy the folder IGMHousekeeping_bin to your C drive.
  2. To install the service, you need to use the InstallUtil program, which is a .NET utility to install Windows services. You can find it in C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727. Alternatively, you could run a .NET Command Window by selecting Start -> Programs -> Microsoft Visual Studio .NET -> Visual Studio .NET Tools -> Visual Studio .NET Command Prompt, which sets all of the required paths for you.

    Type the following command in the command window:

    InstallUtil "C:\IGMHousekeeping_bin\IGMHousekeeping.exe"
  3. To start the service, open Control Panel -> Administrative Tools. Now click Services, locate IGotMessage Housekeeping Service, right click on it and select Start to start it:

    1.jpg

Step 4: Configuring IGotMessage to Work with Microsoft SQL Server 2005

  1. Copy the folder database to your C drive.
  2. Run SQL Server Management Studio by going to Start -> Programs -> SQL Server 2005 program group -> SQL Server Management Studio.
  3. In SQL Server Management Studio Object Explorer, connect to an instance of the Microsoft SQL Server Database Engine, and then expand that instance.
  4. Right-click Databases, point to Tasks, and then click Attach.
  5. In the Attach Databases dialog box, to specify the database to be attached, click Add; and in the Locate Database Files dialog box, select the disk drive where the database resides and expand the directory tree to find and select C:\database\vMessageCenter.mdf.
  6. When you are ready to attach the database, click OK.

Microsoft SQL Server supports two different authentication mechanisms: SQL Server Authentication and Windows Authentication. In general, it's recommended to use Windows authentication.

Scenario 1 - Using SQL Server Authentication

  1. Open the Security node, then right-click on Logins and choose New Login.

    2.jpg

  2. Select the SQL Server authentication option, and then type a user name and password. For example, you can use MyWebsiteUser as the username, and Pa$$w0rD as the password. Finally, click the OK button.
  3. Go back to the database you attached previously, expand the database, then expand Security, and finally expand Users.

    3.jpg

  4. Right-click the Users node and choose New User.
  5. In the Username text box, type MyWebsiteUser. In the Login name text box, type MyWebsiteUser. Alternatively, you can click the little button with the three ellipses and browse for the user name.
  6. At the bottom half of the screen, you see a box labelled Database role membership. In this box, you can choose a number of roles that you want to grant to your new user. The rule here is: give users as few permissions as possible. A good choice is db_datareader and db_datawriter that allows the account to both read from and write to tables in the database.

    4.jpg

  7. Click Securables in the left hand pane and click the Add button. In the dialog that follows, choose All objects of the types and then click OK. Then check Stored Procedures and click OK. The list with Securables will be filled with a number of stored procedures.
  8. Click the stored procedure, sp_DeleteContactAndGroups, and then make sure at least Execute is selected in the Grant column of the Explicit permissions box.

    5.jpg

  9. Repeat the above step for every stored procedure that starts with sp_ followed by a capital letter and the Schema is dbo in the database.
  10. Finally, when all permissions have been set, click the OK button to apply all the changes to the new user account.
  11. Open Web.config in the folder in the C:\IGotMessage_bin and modify the connection string from:

    <add key="connectionString" value="Data Source=WILLIAM-HOME;
        Initial Catalog=vMessageCenter;Integrated Security=True"/>

    to:

    <add key="connectionString" value="Data Source=YourMachineName;
        Initial Catalog=vMessageCenter;User ID=MyWebsiteUser;Password=Pa$$w0rD" />

    Notes for developers: You should consider encrypting connection string in Web.config to reduce the possibility of disclosing server names and database names.

Scenario 2 - Using Windows Authentication with IIS and the Database on the Same Machine

  1. Expand the Security node and then click Logins. If MachineName\ASPNET doesn't exist, where MachineName is the name of your Windows machine, right-click Logins and choose New Login. Type MachineName\ASPNET in the Login name box. Make sure that Windows authentication is selected and then click OK.

    7.jpg

  2. Go back to the database you attached previously, expand the database, then expand Security, and finally expand Users.

    7.jpg

  3. Right-click the Users node and choose New User.
  4. In the Username box, type ASPNET and in the Login name type MachineName\ASPNET. Alternatively, click the button with the ellipses, then Browse to select the account from the Matching objects list.
  5. At the bottom half of the screen, you see a box labelled Database role membership. In this box, you can choose a number of roles that you want to grant to your new user. The rule here is: give users as few permissions as possible. A good choice is db_datareader and db_datawriter that allows the account to both read from and write to tables in the database.

    8.jpg

  6. Click Securables in the left hand pane and click the Add button. In the dialog that follows, choose All objects of the types and then click OK. Then check Stored Procedures and click OK. The list with Securables will be filled with a number of stored procedures.
  7. Click the stored procedure, sp_DeleteContactAndGroups, and then make sure at least Execute is selected in the Grant column of the Explicit permissions box.

    9.jpg

  8. Repeat the above step for every stored procedure that starts with sp_ followed by a capital letter and the Schema is dbo in the database.
  9. Finally, when all permissions have been set, click the OK button to apply all the changes to the new user account.
  10. Open the Web.config in the folder in the C:\IGotMessage_bin and modify the connection string from:

    <add key="connectionString" value="Data Source=WILLIAM-HOME;
        Initial Catalog=vMessageCenter;Integrated Security=True"/>

    to:

    <add key="connectionString" value="Data Source=YourMachineName;
        Initial Catalog=vMessageCenter;Integrated Security=True"/>

    Notes for developers: You should consider encrypting connection string in Web.config to reduce the possibility of disclosing server names and database names.

Scenario 3 - Using Windows Authentication with IIS and the Database on Different Machines.

This document does not cover this scenario. However, the actions you need to perform are very similar to those of scenario 2. It's the exact user account that is different.

Step 5: Configuring Internet Information Services and SMTP Server

  1. From the Start menu, select Settings -> Control Panel -> Administrative Tools, and then open Internet Information Services (IIS) Manager.
  2. In IIS Manager snap-in, expand the Web Sites folder. Right-click the Default Web Site or folder within which you wish to create the virtual directory, select New, and then click Virtual Directory. The Virtual Directory Creation Wizard appears. Click Next. In the Alias box, type igotmessage for the virtual directory. Click Next. In the Directory box, type c:\igotmessage_bin. Click Next. Under Allow the following permissions, click Next and then click Finish.
  3. In IIS Manager snap-in, right-click the igotmessage folder you just created, select Properties. In the site's properties, click the Home directory tab and click the Configuration button. You'll get a form like this:

    10.jpg

  4. Click Edit, and copy the path in the executable field. This is the aspnet_isapi.dll for the current version of the .NET Framework of your virtual site. Click Cancel to cancel out of that dialog and click Add. Paste the path into the executable, use the extension FLV and set your verbs limited to GET, POST, HEAD, DEBUG like this:

    11.jpg

  5. In IIS Manager snap-in, right-click Default SMTP Virtual Server and select Properties. Click Access tab. Click Relayhttp://www.igotmessage.com. button and specify that only the host with 127.0.0.1 IP addresses may relay through this SMTP server.

    12.jpg

  6. Click OK button to save your changes and close the dialog. Click the OK button again to save SMTP service properties and close the dialog.
  7. If you want to connect to remote SMTP servers that require authentication from the local SMTP Service, you must know a user name and password valid on the remote system. With this information, select the Delivery tab. Click on the Outbound Security button. On this dialog box, type the user name and password that should be used when connecting to a remote SMTP server. You can configure Integrated Windows Authentication to prevent clear text authentication. In some cases, you can only depend on Basic Authentication. Of course, to secure the communication, you can apply TLS encryption with SSL certificate. Check with your SMTP server administrator to identify these settings.

Finally, open your Web browser and type the following address: http://localhost/igotmessage/.

History

  • 21st February, 2008: v1.0 Beta - First beta release

For More Information

License

This article, along with any associated source code and files, is licensed under The GNU General Public License (GPLv3)


Written By
United States United States
This member has not yet provided a Biography. Assume it's interesting and varied, and probably something to do with programming.

Comments and Discussions

 
Questionanyone have any luck with this and II7? Pin
mikejobu2331-Mar-10 15:01
mikejobu2331-Mar-10 15:01 
Questionstill around? Pin
mikejobu2328-Feb-10 4:40
mikejobu2328-Feb-10 4:40 
AnswerRe: still around? Pin
microsoft_tony10-Apr-10 21:10
microsoft_tony10-Apr-10 21:10 
GeneralRe: still around? Pin
mikejobu2310-Apr-10 21:24
mikejobu2310-Apr-10 21:24 
Generalproblem Pin
AlphonseAlrick23-Oct-08 5:10
AlphonseAlrick23-Oct-08 5:10 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.