Link to home
Start Free TrialLog in
Avatar of p_partha
p_partha

asked on

Need suggestion for this approach

Hi Guys
Need some advice and suggestions on the approach to this scenario.

I have a Domino application which is residing in our network (i.e. within the firewall) This application requires feedback responses from several users. These users mostly will be notes users. But there may be some users who are external. For these external users we have decided to have a web portion where they have to supply a token before giving their feedback (as they don't have any login ). So anonymous access is given to create a feedback document but only after supplying a token by the user. Now in order for these external users to access this URL, the nsf should reside in the external server. But since the application is 90% internal , we would not like to put the entire app in external server as the details are also confidential.

The approach suggested by me was:
Have a replica copy of the nsf in the external server and do a selective replica of the external server with the internal, so that the documents submitted there, are pushed back to the internal server.

Is this the best way and are there any glitches in this approach. Are there are any alternative suggestions ?



Thanks
Partha
ASKER CERTIFIED SOLUTION
Avatar of Sjef Bosman
Sjef Bosman
Flag of France image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Additional suggestion:
- delete the documents from the external database when they are successfully copied
Avatar of HemanthaKumar
HemanthaKumar

Well that sounds perfect for me.

And that is the bestway too. In future if you want to assign external users a web id you can do so and keep them away from internal data.. Good security. We do have similar kind of setup here too.

The other approach would be something like mail-in-db. THe external user will send a mail with his comments and  Since the comments are just text you can read it from body and create docs on fly using mail agents. But the above method has more control over this one.

~Hemanth
Avatar of p_partha

ASKER

sjef bosman

from what i understand from u:

Create a replica copy of the database in external.

Push all the external feedback documents from the internal to the external thru an agent

Move the documents from the external to the internal once they are saved.



I have some issues here:

the feedback providers cannot submit documents after 30 days or if the report is generated. So ideally i have to do this steps:

Everytime a feedback document is modified at external server i have to push to internal database. Everytime the external feedback document in the internal database is modified (like agent running on the doucment to stamp some fields)  i have to push the document back to the external database

so ideally both push and pull replication is happening here...

Let me know whether i am right in understanding,


Hemanth,
are u supporting my model as perfect or sjef bosman's ... Kind of confused ;-)


Partha
Well when I started typing his comment was not there.. obviously yours
bosman suggestion says that user should not see the data that he posted.. is that you want ? If so you give them depositor access only. Write a cleanup agent which will run nightly to remove the documents I don't see any added benefit here
Hemanth,
The document for external feedback providers shd be visible to them at any point of time as they can save the document as "draft". But once they do any modification to the document it shd be reflected int he internal....


Also when the document has crossed 30 days then the internal database wills tamp the document with some flags, so that it is not submittable. So ideally both push and pull shd take place here


{Partha
Right !
Ah, now you change the (assumed) specifications! If you say that "feedback" is required, that's one-way to me, hence my suggestion to use a copy of the database (not a replica!) and an agent to move documents into the central db. What you describe now, i.e. that you want users to be able to modify the document, does require full replication. Your original suggestion is more complicated, but replication in this case will be the only solution.

Maybe you could use a mixed approach: use a copy of the database for the external users, and let the agent only run on documents with status Accepted. If you want your browser-users to see documents that are processed, just leave them in the external db as well.

For the copy to be maintained easily, create a template database that you modify, base both your databases on this template, and use Refresh Design whenever you modified your template (or wait for the Designer task to pass by).

Sjef
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Why not just give full replication abilities to both the inside and outside db and set web and client forms to only be accessible for the necessary users.  You can still hide most information you need too.
Yoshi,
Safer to start with "I give you nothing" and then add what you need to actually give.  If you chose teh "here's everything, but I am wrapping shrouds around the parts I dont wnat you to see," well, shrouds have a way of slipping off, and if you've got lots of stuff, all to easy to overlook another part you wated to hide.
qwaletee,
I gotcha, you are right.  Sometimes I think more of my own restricted environment and not of others.  
yoshi78,

Of course!  We all se the world through "locally-colored" glasses.

Still waiting on that code from you, though.
qwaletee,

Uh Oh, I sent it to the _s_a_l_e_s addy in your profile.  My independant is twise@enia.net if you don't want to post your email address.  I've got it ready to go though.